上篇文章我们说了静态代理,那么有静态代理自然也就有动态代理咯,这次我们主要说 javaJDK给我提供的 一套动态代理。
老规矩先看代码,
接口类:
1 | public interface Hello { |
//实现类
1 | public class HelloImpl implements Hello{ |
动态代理类
1 | public class DynamicProxy implements InvocationHandler{ |
根据注释 很好理解 动态代理,总结下 java提供的动态代理
优点:
1.被代理类变动,代理不需要变动
2.更加灵活
缺点:
1.依赖接口,必须要有接口 才能代理 被代理对象
万一 需要代理的对象没有接口,那就玩玩拉,所以下一篇 开始说CGLIB 这也是springAop实现动态代理的依赖,等着感受它的强大魅力吧